/**
 * ec font列表
 */
define(['../../common/service', '../../common/copybox', '../../common/ajaxfileupload'],
    function( http, CB){
        var fontList = {
            init: function (query) {
                var _this = this;
                //列表管理
                $('table[list-manager="fontList"]').listManager('init',{
                    setTopVal:$('table[list-manager="fontList"]').offset().top//调整吸顶的高度,需要减去这个高度
                    ,scrollDOM:$('.fmp-article')//监听滚动条
                    ,supportAjaxPage: true
                    ,pageCallback:function(query){
                        $.extend(_this._query, query);
                        _this.getList();
                    }
                }, function(query){
                    _this._query = query;
                    _this.getList();
                });

                _this.bindAddFontEvent();
            }
            /*
             @绑定获取值
             */
            ,getSaveFontParams: function(){
                var params = {};
                var _addFontModal= $(".dialog-add-font");
                params.fontName = $.trim(_addFontModal.find('input.fontName').val());
                params.fontWeight= _addFontModal.find('input[name="fontweight"]').data('val');
                return params;
            }
            /*
             @ 添加font保存前 入参校验
             */
            ,validateSaveFontParams: function(){
                var _this = this;
                var params = _this.getSaveFontParams();
                //font名称不能为空
                if (Kit.isBlank(params.fontName)){
                    Kit.alert2(I18N.getText('font', 'pleaseInputFontName'));
                    return false;
                }
                var filepath=$("#fontFile").val();
                //获得上传文件名
                var fileArr=filepath.split("\\");
                var fileTArr=fileArr[fileArr.length-1].toLowerCase().split(".");
                var filetype=fileTArr[fileTArr.length-1];
                //切割出后缀文件名
                console.log(filetype)
                if(filetype != "ttf" && filetype != "ttc"){
                    Kit.alert2(I18N.getText('font', 'pleaseUploadFile'));
                    return false;
                }
                return true;
            }
            /*
             @绑定添加font事件
             */
            ,bindAddFontEvent : function(){
                var _this = this;
                var _addFontModal= $(".dialog-add-font");
                _addFontModal.modal({
                    backdrop: 'static',
                    keyboard: false,
                    show:false
                });
                //modal初始化
                _addFontModal.on('show.bs.modal', function(){
                    _addFontModal.find("input").val("");
                    _addFontModal.find("textarea").val("");

                    ////feed名称重名校验
                    //_addFontModal.find('.fontName').change(function(){
                    //    var _thisName = $(this);
                    //    var nameV = $.trim(_thisName.val());
                    //    if(Kit.isBlank(nameV))
                    //        return;
                    //    var paramFeedName = {
                    //        feedName : nameV
                    //    }
                    //    http.do('/ecfont/validate',paramFeedName, 'POST').then(function(res){
                    //        if (res.succeed){
                    //            if(res.data == 2) {
                    //                Kit.alert2('已存在相同字体');
                    //                _thisName.addClass("form-input-warning");
                    //                _thisName.val("").focus();
                    //            } else if(res.data == 1) {
                    //                _thisName.removeClass("form-input-warning");
                    //            }
                    //        } else {
                    //            Kit.alert2(res.errorMsg);
                    //            return false;
                    //        }
                    //    });
                    //});

                    //调度
                    $("div.ndp-drop-wrapper[name=fontweight-drop]").empty().drop({
                        data:['bold', 'normal'],
                        name:"fontweight"
                    }).off("ITEM_CLICK").on("ITEM_CLICK",function(e){
                        //var val = e.originalEvent.data.val;
                    }).val('normal');

                });

                //保存font事件
                _addFontModal.find('button[save]').off("click").on("click", function(e){
                    var param = _this.getSaveFontParams();
                    //校验
                    if (!_this.validateSaveFontParams()) {
                        return;
                    }
                    // 发起请求
                    //提交数据

                    $.ajaxFileUpload({
                        url:  apiUrl + '/ecfont/upload?fontName='+ param.fontName + '&fontWeight='+param.fontWeight,
                        fileElementId: 'fontFile',
                        type:'post',
                        secureuri: false,
                        dataType:'JSON',
                        success: function (res, status) {
                            //重新刷新列表
                            _this.getList();
                            _addFontModal.modal("hide");
                        }
                    });

                });
                $("#add-font-btn").off("click").on("click", function(){
                    _addFontModal.modal("show");
                });
            }
            /*
             @获取列表数据
             */
            ,getList:function(){
                var _this = this;
                var loadingArea = $('.font-table');
                Kit.loading.show(loadingArea);
                http.work('/ecfont/findAll',_this._query,'POST').then(function(res){
                    if (res.succeed){
                        //操作DOM节点更换数据
                        var data = res.data;
                        var _table = $('table[list-manager="fontList"]'),
                            _tbody = $('#font-grid', _table),
                            tmpHtml = '',
                            _list = data.fonts;
                        var timezoneValue = window.sessionStorage.timezoneValue;
                        if(_list) {
                            for(var i=0; i< _list.length; i++){
                                tmpHtml += '<tr id="'+_list[i].id+'">'
                                    +'<td>' +( (data.paginator.cPage-1) * data.paginator.pSize +i + 1) +'</td>'
                                    +'<td>' +_list[i].fontName +'</td>'
                                    +'<td>' + ((typeof(_list[i].fontWeight) === "undefined") ? '':_list[i].fontWeight) +'</td>'
                                    +'<td><img class="font-previewimg" src="' +_list[i].previewImg +'"/></td>'
                                    +'<td><a href="'+_list[i].fontUrl+'">'+_list[i].fontUrl+'</a></td>'
                                    +'<td>' + moment(_list[i].createTime).utcOffset(timezoneValue).format('YYYY-MM-DD HH:mm') +'</td>'
                                    +'</tr>'
                            }
                        }
                        _tbody.html(tmpHtml);
                        _table.listManager([{'resetTd':false, 'resetPageData': data.paginator}]);
                        Kit.loading.hide(loadingArea);
                    } else {
                        Kit.loading.hide(loadingArea);
                        Kit.alert2(res.errorMsg);
                        return;
                    }
                });
            }
        }
        return fontList;
    });
